Thành phần Windows Presentation Foundation

Direct3D

Đồ họa và giao diện dựa trên Direct3D cho phép hiển thị các xử lý điểm - ảnh phức tạp hơnGDI's. Công nghệ này cho phép chia sẻ tác vụ xử lý cho GPU và giảm tải CPU.

Data Binding (Liên kết dữ liệu)

Data binding là điểm nổi bật của WPF trong việc liên kết dữ liệu của ứng dụng. Tùy theo mục đích của chương trình, lập trình viên có thể xử lý liên kết theo ba loại:

    1. one time: Chỉ tải dữ liệu 1 lần khi ứng dụng được thực thi.
    2. one way: Ứng dụng chỉ có nhiệm vụ hiển thị dữ liệu, mọi cập nhật từ phía người dùng sẽ không được lưu trữ.
    3. two way: Dữ liệu có thể được lấy và cập nhật từ phía người dùng.
    4. one way to source: Trái ngược với OneTime, dữ liệu sẽ chỉ được nhận từ Interface.

Đa phương tiện

WPF cho phép xây dựng chương trình với sự hỗ trợ vector, xử lý hình ảnh, âm thanh, video, đồ họa 2D, 3D.

    • Đồ họa 2D: brushes, pens, geometries, và transforms.
    • Đồ họa 3D
    • Hình ảnh: hỗ trợ các định dạng: BMP, JPEG, PNG, TIFF, Windows Media Photo, GIF và ICON.
    • Video: hỗ trợ WMV, MPEGAVI. Xử lý tốt hơn nếu Windows Media Player đã được cài và tích hợp codec.

Templates

Dữ liệu trong WPF có thể được định nghĩa để hiển thị theo yêu cầu thông qua các thuộc tính (properties) và việc định nghĩa template, style cho các control.

  • HierarchicalDataTemplate
  • ItemsPanelTemplate
  • ControlTemplate
  • DataTemplate

Hiệu ứng

WPF hỗ trợ hiệu ứng dựa trên thời gian thực thi của chương trình, thay vì frame-based. Các hiệu ứng đơn giản có thể xử lý bằng việc quản lý thời gian chạy, còn các xử lý phức tạp hơn cần đến sự hỗ trợ của lớp Animation.

  • Tất cả các thuộc tính của đối tượng trong WPF đều có thể được xử lý để trở nên sinh động hơn, miễn là nó thuộc loại Dependency Property.
  • Các lớp quản lý hiệu ứng tùy theo loại của thuộc tính được xử lý. Ví dụ, việc thay đổi màu sắc của control sẽ do lớp ColorAnimation hay thay đổi chiều dài hoặc chiều rộng do lớp DoubleAnimation đảm nhiệm.

Các hiệu ứng có thể được gom nhóm vào Storyboards và gán cho đối tượng và lớp này điều khiển việc bắt đầu hoặc dừng các hiệu ứng thông qua các phương thức tương ứng (Start, Stop, Pause...). Hiệu ứng cho ứng dụng có thể được viết trên giao diện bằng XAML hoặc định nghĩa bằng C#.

Tài liệu tham khảo

WikiPedia: Windows Presentation Foundation http://www.3dpaintbrush.com/content/xaml.aspx http://snoopwpf.codeplex.com http://wpfinspector.codeplex.com/ http://www.erain.com/Products/ZAM3D/DefaultPDC.asp http://msdn.microsoft.com/en-us/library/ms742190.a... http://msdn.microsoft.com/en-us/library/ms754130.a... http://msdn.microsoft.com/en-us/netframework/bb188... http://www.microsoft.com/expression/default.aspx http://blogs.msdn.com/b/wpfsdk/ http://www.techmero.com/2012/12/windows-presentati...